In mathematics, logic and computer science, a formal language (a set of finite sequences of symbols taken from a fixed alphabet) is called recursive if it is a recursive subset of the set of all possible finite sequences over the alphabet of the language. Equivalently, a formal language is recursive if there exists a total Turing machine (a Turing machine which halts for every given input) which when given a finite sequence of symbols from the alphabet of the language as input accepts exactly those words from the alphabet of the language that are part of the language and rejects all other words.